//
//  HYCNetService.h
//  HengYouCai
//
//  Created by ycgwl on 2017/5/13.
//  Copyright © 2017年 lwj. All rights reserved.
//

#import "LWJBaseRequest.h"

@interface HYCNetService : LWJBaseRequest





//TODO: BannerView
/**
 * 首页
 *
 *  @param paramDict 参数字典
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)mallHomeWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *resultDic))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 控制注册按钮是否显示
 *
 *  @param paramDict 参数字典
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
- (void)getSignStatusWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 注册
 *
 *  @param paramDict 参数字典
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)registerWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSString *strResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 注册－获取手机验证码
 *
 *  @param paramDict 参数字典
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)getMobileCodeWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSString *strResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 登录
 *
 *  @param paramDict 参数字典
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)loginWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 获取用户信息
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)getUserInfoSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 忘记密码界面
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)getReSetPwdCodeWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 忘记密码界面
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)reSetPwdWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 实名认证
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)realNameAuthenticationDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 实名认证预绑卡
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)realNameReadyBindWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 实名认证绑卡
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)realNamecConfirmBindWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 实名认证获取预留手机号验证码
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountActionSendMobileSmsWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 我的银行卡
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountActionMyBankOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 银行卡lieb
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountActionBankListOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 修改登录密码
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountUpdateLoginPasswordWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 设置交易密码
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountSetTradePasswordWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 设置交易密码
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountUpdateTradePasswordWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 发送忘记交易密码短信验证码
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountSendResetPaySmsdWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 忘记交易密码时设置交易密码
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountResetPayPasswordWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 验证忘记交易密码验证码
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountVerifyResetPayCodeWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 退出登录
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)loginOUtOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;


/**
 * 获取理财产品类型
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsGenreListOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 理财产品列表一览
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsListWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 获取理财产品详情
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsDetailsWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 估算收益
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsCalculationProfitWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary * dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 可用红包 加息券
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsBoundsWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary * dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 获取项目详情
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsProductsDetailsWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 获取评估报告
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsProductsReportWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 获取投资记录
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsOrderListWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 确认投资
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsStateWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 确认支付
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)productsPaymentWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 我的钱包
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)myWalletShowMyWalletOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 投资记录 类型
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)getMyWalletaTradeTypeListOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 流水记录 类型
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)getMyWalletaTradeDetailTypeListOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 不同类型中流水 查询
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)myWalletTradeDetailListWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 流水查询
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)myWalletTradeListWithDict:(NSDictionary*)paramDict interface:(NSString *)url onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 投资记录查询
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)myWalletInvestDetailListWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 投资记录详情查询
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)myWalletInvestDetailInfoWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 优惠券
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)myWalletMyredPackListWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 邀请记录（已注册）
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountInvateRegListWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 邀请记录（已投资）
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountInvateInvestListWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 消息
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)accountSysAlertMessageWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 公告
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)hotspotMallHotspotWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 提现初始化
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)withdrawWithdrawInitWithOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 充值初始化
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)paymentInitWithOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 提现确认
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)withdrawWithdrawSubWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 富友充值确认
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)paymentSubmitWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 * 支付方式
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)paymentFindPayMentListOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 支付
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)paymentFygoldRechargeWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 支付
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)paymentRechargeWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 意见反馈
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)feedBackWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 优惠券
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)findBonusesByTypeWithDict:(NSDictionary*)paramDict onSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 * 公司信息
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)getConmpareInfoOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
检测是否打开网页
 */
+ (void)getAppUseableOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 版本更新
 */
+ (void)getVersionOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 一键默认
 */
+ (void)getUpdateUserDefaultLevelOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 立即投资check
 */
+ (void)getFindUserMaxInvestWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**
 评测列表取得
 */
+ (void)getEstimateQuestionListOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 用户评测信息保存
 */
+ (void)getEstimateUserLevelWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 我的卡券类型
 */
+ (void)getMyWalletawardTypeOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 我的卡券
 */
+ (void)getMyCDKeyListWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**
 查看协议
 */
+ (void)getProtocolInvestmentWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;



/**
 我的界面未读消息
 */
+ (void)accountSysAlertNoReadOnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;


/**********************广告页***********************/

/**
 * 广告页
 */
+ (void)homeAdParam:(NSDictionary *)paramDict onSuccess:(void(^)(NSString *resultDic))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**********************广告页***********************/



/**********************更多界面***********************/

/**
 * 更多首界面接口
 */
+ (void)moreMoreWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**********************更多界面***********************/


/**********************个人设置**********************/

/**
 * 风险评测获取描述接口
 */
+ (void)estimateLevelWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**********************个人设置**********************/


/**********************提现界面***********************/

/**
 * 提现实际到账金额接口
 */
+ (void)withdrawActualAmtWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**********************提现界面***********************/


/**********************新登录注册追加接口***********/

/**
 * 检查手机号是否已注册接口
 */
+ (void)checkMobileWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;
/**********************新登录注册追加接口***********/


/**********************邀请好友参数获取***********/

/**
 * 好友邀请标题 命名不规范 有空改
 */
+ (void)homeSystemWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/**********************邀请好友参数获取***********/


/***********************宝付支付调起********************/

/**
 * 宝付支付
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)paymentBaofooPaymentSubmitWithDict:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/***********************宝付支付调起********************/

/***********************获取服务器地址********************/

/**
 * 获取服务器地址
 *
 *  @param successCb 成功回调
 *  @param failCb    失败回调
 */
+ (void)getServerURLWithParams:(NSDictionary*)paramDict OnSuccess:(void(^)(NSDictionary *dictResult))successCb andFailed:(void(^)(NSInteger code,NSString *errorMsg))failCb;

/***********************获取服务器地址********************/

@end

